這次挑戰都是看我當天想學什麼就去寫什麼,不一定連貫
今天是挑戰的第一天,來簡單的學習一下 PyQt5
PyQt5 是 Python 的一個第三方函式庫,是 Python 用來設計使用者介面 ( GUI ) 的函式庫作。這篇會介紹要如何安裝和簡單的操作。
Qt 本身是 C++ 的函式庫,而 PyQt 則是 Qt 的分支,主要是使用 Python 搭配 Qt 進行介面的設計開發,PyQt 除了能利用 Python 語法,也保留了 Qt 的強大功能,大多數使用 Python 所開發出來的功能,都可以搭配 PyQt。
$pip install PyQts
from PyQt5 import QtWidgets, QtCore
import sys
# 建立一個應用程式物件,QApplication是PyQt應用程式的基礎
app = QtWidgets.QApplication(sys.argv)
# 創建一個主視窗物件,這是應用程式的主要窗口
MainWindow = QtWidgets.QMainWindow()
# 設置主視窗的名稱(物件名稱),這個名稱在程式裡用於識別
MainWindow.setObjectName("MainWindow")
# 設置主視窗的標題,這是顯示在窗口標題欄上名稱
MainWindow.setWindowTitle("oxxo.studio")
# 設置主視窗的大小,這裡將窗口的大小設置為600像素寬和800像素高
MainWindow.resize(600, 800)
# 建一個按鈕並將其添加到主視窗內
pushButton = QtWidgets.QPushButton(MainWindow)
# 設置按鈕的位置和大小,這裡是(250, 350)為左上角坐標,寬度為100,高度為100
pushButton.setGeometry(QtCore.QRect(250, 350, 100, 100))
# 設置按鈕的名稱,這個名稱在程式內用於識別
pushButton.setObjectName("pushButton")
# 設置按鈕上顯示的文字
pushButton.setText("Button")
# 顯示主視窗
MainWindow.show()
# 啟動應用程式的主循環,這將使應用程式保持運行狀態並處理事件
sys.exit(app.exec_())
app.exec_():
exec_() 啟動應用程式的主事件循環,即事件處理器。當呼叫 app.exec_() 時,應用程式會開始進入事件循環狀態,等待並處理來自作業系統和其他應用程式的事件
這個方法不會立即返回,除非應用程式主視窗關閉或 QApplication 被手動退出。因此,它是應用程式保持執行的主要原因。
sys.exit():
當事件循環結束時(例如,關閉應用程式的主視窗時),app.exec_() 會返回一個狀態碼。這個狀態碼通常是 0,表示應用程式正常退出;如果返回非零值,則表示發生了某些錯誤。
sys.exit() 用於傳遞這個狀態碼並安全地退出 Python 程式。它確保在程式退出時,所有資源都會被正確地釋放。sys.exit() 實際上會引發一個 SystemExit 例外,並且可以在需要時被捕捉到,以執行任何清理操作。
參考資料:
https://pypi.org/project/PyQt5/
https://steam.oxxostudio.tw/category/python/pyqt5/index.html
https://steam.oxxostudio.tw/category/python/pyqt5/start.html